#ifndef __SCENEMANAGER_H__
#define __SCENEMANAGER_H__

#include <vector>
#include "types.h"

namespace Hope {

    class SceneManager
    {
	public:
        SceneManager();

		static SceneManagerPtr & GetSceneManager();

		~SceneManager();

		SceneNodePtr CreateSceneNode();

		SceneNodePtr GetSceneNode(uint32_t index);
		SceneNodePtr GetSceneNode(std::string &name);

		void UpdateSceneNode();

		void Render();

	private:

		static SceneManagerPtr s_sceneManager;

		std::vector<SceneNodePtr> m_nodes;
    };

}

#endif